<?
function GetUsers($cmd, $token, $show = '*')
{
  $ret = $token;
  if ($ret) {
    switch ($ret['type']) {
      case 会员:
        if ($cmd['ID'] != $ret['ID']) $show = 'ID,display';
        break;
      case 技师:
        if ($cmd['ID'] != $ret['ID']) $show = 'ID,display,recv';
        break;
      case 商家:
        if ($cmd['ID'] != $ret['ID']) $show = 'ID,display,recv,type,itemType';
        break;
      case 管理员:
        # code...
        break;
      default:
        return ['msg' => 'token数据错误', 'data' => $token];
    }
  } else {
    $show = 'ID,display';
  }
  $tmp = $ret['type'] != 管理员;
  $ret = GetData($cmd, $show);
  foreach ($ret as $key => $value) {
    if (isset($value['password']) && $tmp) unset($value['password']);
    if (isset($value['display'])) $value['display'] = json_decode($value['display']);
    if (isset($value['recv'])) $value['recv'] = json_decode($value['recv']);

    $ret[$key] = $value;
  }
  return ['result' => $ret];
}
function GetOrders($cmd, $token, $show = '*')
{
  $ret = $token;
  if ($ret) {
    if ($ret['type'] == 会员) $cmd['buyID'] = $ret['ID'];
    elseif ($ret['type'] != 管理员) {
      if ($cmd['sellID'] != $ret['ID'] && $cmd['buyID'] != $ret['ID']) return noPrem;
    }
    $ret = GetData($cmd, $show);
    $a = false;
    if ($ret && isset($ret[0]['money'])) $a = true;
    foreach ($ret as $key => $value) {
      if ($a) $ret[$key] = json_decode($value['money'], true);
    }
    return ['result' => $ret];
  }
  return noPrem;
}

// $fun[c['get']] = function ($cmd, $token = false) {
//   include_once 'get.php';
//   if (!isset($cmd['table'])) return ['msg' => 'table 缺失', 'data' => $cmd];
//   else $cmd['table'] = strtolower($cmd['table']);
//   $ret = $token ? $token : useToken($cmd);
//   unset($cmd['token']);
//   if (strIn($cmd['table'], [',', ' ', '.']) && !$ret && $ret['type'] != 管理员) return noPrem;
//   $show = '*';
//   if ($cmd['show']) {
//     $show = $cmd['show'];
//     unset($cmd['show']);
//   }
//   if (isset($cmd['sum']) && $cmd['sum']) {
//     unset($cmd['sum']);
//     $ret = GetData($cmd, 'count(*)');
//     if ($ret && isset($ret[0]['count(*)'])) $ret = ['sum' => $ret[0]['count(*)']];
//     else $ret = ['msg' => '当前条件下无数据', 'data' => $cmd];
//     return $ret;
//   }
//   if ($ret['type'] == 会员 && strcasecmp($cmd['table'], 'itemType')) $cmd['state'] = '>0';
//   if ($cmd['table'] == 'users') return GetUsers($cmd, $ret, $show);
//   elseif (!(stripos($cmd['table'], 'orders') === false)) return GetOrders($cmd, $ret, $show);
//   return GetData($cmd, $show);
// };
?>